package com.canbot.u05.utils;

import com.canbot.u05.MainApplication;

import java.util.Locale;

/**
 * String Utils
 */
public class StringUtils {

    private StringUtils() {
        throw new AssertionError();
    }

    /**
     * @param str
     * @return if string is null or its size is 0, return true, else return
     * false.
     */
    public static boolean isEmpty(CharSequence str) {
        return (str == null || str.length() == 0);
    }


    public static String getLinkRobotStr(int resId) {
        return String.format(Locale.getDefault(), MainApplication.getInstance().getString(resId), Config.ROBOT_NAME);
    }
    public static String getLinkRobotStrTwo(int resId) {
        return String.format(Locale.getDefault(), MainApplication.getInstance().getString(resId), Config.ROBOT_NAME,Config.ROBOT_NAME);
    }

    /**
     * @param str
     * @return if string is null or its size is 0 or it is made by space, return
     * true, else return false.
     */
    public static boolean isBlank(String str) {
        return (str == null || str.trim().length() == 0);
    }

    public static boolean matchString(String src, String dest[]) {
        int len = dest.length;
        if (src == null || dest == null || len == 0) {
            return false;
        }
        if (src != null && src.equals("")) {
            return false;
        }
        src = src.trim();
        for (int i = 0; i < len; i++) {
            String mDest = dest[i].trim();
            // int mDest_len = mDest.length();
            // int mSrc_len = src.length();
            // if (mDest_len > mSrc_len) {
            // // if (mDest_len - mSrc_len > 3) {
            // // continue;
            // // }
            // if (mDest.contains(src)) {
            // return true;
            // } else {
            // continue;
            // }
            // } else {
            // // if (mSrc_len - mDest_len > 3) {
            // // continue;
            // // }
            if (src.contains(mDest)) {
                return true;
            } else {
                continue;
            }
            // }
        }
        return false;
    }

    public static boolean matchString(String src, String dest) {
        if (src == null || dest == null) {
            return false;
        }
        if (src != null && src.equals("")) {
            return false;
        }
        src = src.trim();
        dest = dest.trim();
        // int mDest_len = dest.length();
        // int mSrc_len = src.length();
        // if (mDest_len > mSrc_len) {
        // // if (mDest_len - mSrc_len > 3) {
        // // return false;
        // // }
        // if (dest.contains(src)) {
        // return true;
        // }
        // return false;
        // } else {
        // // if (mSrc_len - mDest_len > 3) {
        // // return false;
        // // }
        if (src.contains(dest)) {
            return true;
        }
        return false;
        // }
    }

    public static String detailTTStr(String str) {
        String resultStr = str.replaceAll("\r|\n", "").replaceAll("\"", "“").replaceAll("\"",
                "”");
        return resultStr;
    }

    /**
     * 获取 Exception 的详细信息
     */
    public static String getErrorDetail(Exception e) {
        StringBuilder errorMsg = new StringBuilder(e.toString());
        for (StackTraceElement stackTraceElement : e.getStackTrace()) {
            errorMsg.append("\n").append(stackTraceElement);
        }
        return errorMsg.toString();
    }

}
